//
//  main.m
//  04-HomeWorkNSDictionary
//
//  Created by 402030900@qq.com on 16/7/7.
//  Copyright © 2016年 402030900@qq.com. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "Color.h"
int main(int argc, const char * argv[]) {
//    需要的处理文件的下载地址 处理⽂件crayons.txt中的⽂本信息，⽂本内容是关于颜⾊的，每⾏都是⼀ 个颜⾊的信息，例如：Almond #EED9C4，前⼀个字符串是颜⾊的名称，后⼀ 个字符串是颜⾊的16进制⾊值，处理⽂本完成如下需求:
//    
//    使⽤字典管理所有的颜⾊，即字典中存储的是多个键值对，颜⾊名称为 key，16进制颜⾊值（不带#）是value。
//    使⽤⼀个新的字典管理颜⾊，对颜⾊进⾏分类管理，即：“A”，“B”，“C”… 即这个字典包含多个键值对，key是26个字⺟，value是数组，数组⾥存放的是 Color对象（包含name和colorValue）。需要⾃⼰创建Color类。
    NSString *resourceStr = [NSString stringWithContentsOfFile:@"/Users/402030900qq.com/DLS160710/Objective-C/HomeWork/04-HomeWorkNSDictionary/04-HomeWorkNSDictionary/crayons.txt" encoding:NSUTF8StringEncoding error:nil];
//    NSLog(@"resourceStr = %@",sourceStr);
   NSArray * resourceArr = [resourceStr componentsSeparatedByString:@"\n"];
   NSMutableDictionary * colorDic = [NSMutableDictionary dictionary];
   NSMutableDictionary * groupDic = [NSMutableDictionary dictionary];
    for (NSString * colorString in resourceArr) {
        NSArray * componentsArr = [colorString componentsSeparatedByString:@"#"];
        NSString * key = [componentsArr firstObject];
        NSString * value = [componentsArr lastObject];
//        NSLog(@"key = %@,value = %@",key,value);
        [colorDic setObject:value forKey:key];
        Color * color = [[Color alloc]initWithName:key colorValue:value];
        if (key.length != 0) {
            NSString * CapitalName = [key substringWithRange:NSMakeRange(0, 1)];
            NSMutableArray * group = [groupDic objectForKey:CapitalName];
        if (group != nil) {
            [group addObject:color];
        }else{
            group = [NSMutableArray arrayWithObject:color];
            [groupDic setObject:group forKey:CapitalName];
        }
      }
    }
    NSLog(@"%@",groupDic);
   
    return 0;
}
